package com.itheima03.day11Test;

import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Comparator;
import java.util.TreeSet;

/**
 * @author 刘全
 * @date 2021/8/2
 */
public class Test6 {
    public static void main(String[] args) throws IOException {
        /**
         * 6. 定义学生类，有姓名，年龄，分数三个属性。
         *     1. 创建三个学生对象，添加到集合中，要求分别按照分数，年龄，姓名作为条件进行排序。
         *     2. 将集合中的三个学生对象信息存储到当前项目下的stu.txt文件中
         *         举例：
         *             张三,18,88
         *             李四,21,98
         *             老王,24,91
         */
        TreeSet<Student> treeSet = new TreeSet<>(new Comparator<Student>() {
            @Override
            public int compare(Student o1, Student o2) {
                int result = o1.getScore() - o2.getScore();
                result = result == 0 ? o1.getAge() - o2.getAge():result;
                result = result == 0 ? o1.getName().compareTo(o2.getName()):result;
                return result;
            }
        });
        treeSet.add(new Student("张三",18,88));
        treeSet.add(new Student("李四",21,98));
        treeSet.add(new Student("老王",24,91));
        FileOutputStream fos = new FileOutputStream("stu.txt");
        for (Student stu : treeSet) {
            byte[] bytes = stu.toString().getBytes();
            fos.write(bytes);
            fos.write("\r\n".getBytes());
        }
        fos.close();
    }
}
